package com.microtf.inscription.jpa;

import com.microtf.inscription.jpa.entity.BlogSpace;
import com.microtf.inscription.jpa.entity.BlogCategory;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.stereotype.Component;

import java.util.Collection;
import java.util.List;

/**
 * 博客分类
 *
 * @author guliuzhong
 */
@Component
public interface BlogCategoryJpa extends JpaRepository<BlogCategory, Integer> {
    /**
     * 查找指定类型的分类
     * @param blogSpace 博客空间
     * @param title 类目名称
     * @return 类目列表
     */
    List<BlogCategory> findBlogCategoriesByBlogSpaceAndTitleIn(BlogSpace blogSpace, Collection<String> title);

    /**
     * 获取指定blogSpace的类目
     * @param blogSpace 应用ID
     * @param pageable 分页
     * @return 带分页的类目
     */
    Page<BlogCategory> findByBlogSpace(BlogSpace blogSpace, Pageable pageable);
}
